home *** CD-ROM | disk | FTP | other *** search
/ Meeting Pearls 1 / Meeting Pearls Vol 1 (1994).iso / installed_progs / text / faqs / unixware-faq / text0002.txt < prev   
Encoding:
Text File  |  1994-06-13  |  15.2 KB  |  424 lines

  1. As of this posting, there are eight (8) updates, not all of which will
  2. you typically need.  These updates are to be applied to version 1.0
  3. only; all changes have been merged into version 1.1.  The updates are
  4. (listed by their file names on the UnixWare ftp archive server):
  5.  
  6.   updte1.tar - First UnixWare update
  7.   updte2.tar - Update 1.0.2
  8.   updte3.tar - Update 1.0.3
  9.   upbnu4.tar - Basic Networking Utilities (uucp, serial comm, ttymon) Update 4 
  10.   mipx.tar - Newer, faster Merge IPX; must have Advanced Merge installed
  11.   mhs.tar - Fixes to MHS mail services; replaces earlier mhs.tar versions
  12.   atmtp.tar - NFS automounter update 1.0.4
  13.   nsupdt.tar - NetWare API Library update 1.0.4, fixes NetWare automounter
  14.  
  15. The first four of these are those of greatest interest to Usenet
  16. readers.  Note that all of updte1/updte2/updte3 need not be installed;
  17. Update 1.0.3 includes effectively replaces, and adds to, Update 1.0.3.
  18. Thus UnixWare sysadmins can simply install Update 1.0.3 after the
  19. first update is installed, and leave out Update 1.0.2 altogether.
  20.  
  21. All of these are available from the UnixWare ftp archive server:
  22.  
  23.   ftp.novell.com:~ftp/pub/unixware/Updates
  24.  
  25. They are also available on ftp.novell.de.  Andrew Josey
  26. (andrew@uel.co.uk) adds:
  27.  
  28. ``and also from our automated mail server which carries binaries/sources etc
  29.   for UnixWare and also mirrors the ftp sites.
  30.  
  31.   To get a list of Updates from our mail server:
  32.  
  33.     mail mail-server@uel.co.uk
  34.  
  35.   with a msg containing:
  36.  
  37.     begin
  38.     reply   <your-email-address-here!>
  39.     index Updates
  40.     end
  41.  
  42.  
  43.   Use send with a filename to request a file. Note that the requests are
  44.   case sensitive, for example to get the latest BNU fix:
  45.  
  46.     send MIRRORS/ftp.novell.com/pub/unixware/Updates/updbnu4.tar
  47.  
  48. Subject: S13) How do I know which updates I've already got installed?
  49.  
  50. Don't laugh; some of us have systems whose vendors installed UnixWare  
  51. (including the FAQ maintainer :-).  Updates will show up as installed  
  52. packages; from the UnixWare desktop, double click:
  53.  
  54.   System_Setup->Application_Setup
  55.  
  56. Be patient while the installed applications are cataloged.  When you get the  
  57. browser showing installed packages, you will be able to see the installed  
  58. updates.
  59.  
  60. If you are the impatient sort, Andrew Josey (andrew@uel.co.uk) suggests:
  61.  
  62.   I cancel the cataloging, and then hit
  63.  
  64.     View
  65.       Installed Appl'ns
  66.         All
  67.  
  68.   Which is usually quicker... and ok when you know you've not reinstalled
  69.   anything new recently.
  70.  
  71. Subject: S14)  How can I make the `man' pages accessible from the command line?
  72.  
  73. The following symbolic links will enable users to access the standard
  74. UNIX man pages without further action on their part:
  75.  
  76.   ln -s /usr/flib/books/man /usr/share/man
  77.   ln -s /usr/flib/bin/fman /usr/bin/man
  78.  
  79. Subject: S15) Are there disk compression utilties for UnixWare?
  80.  
  81. Programmed Logic sells such a drop-in replacement compressed file
  82. system that, among other things, can be installed as the root
  83. partition and can be NFS-exported.  Programmed Logic claims that it
  84. can double a file system's capacity.  For information on the Desktop
  85. File System (DTFS), contact:
  86.  
  87.   Programmed Logic Corp.
  88.   200 Cottontail Lane
  89.   Somerset, NJ 08873
  90.   (908) 302-0090 Voice
  91.   (908) 302-1903 FAX
  92.   Email:
  93.   info@prologic.com (For product inquiries)
  94.   sales@prologic.com (For order placement)
  95.   support@prologic.com (technical support for registered users)
  96.  
  97. Subject: S16) How do I install a package downloaded from one of the ftp servers?
  98.  
  99. Rick Richardson (rick@digibd.com) explains:
  100.  
  101.   You can untar the stuff anywhere convenient, say,
  102.   under /tmp, and then:
  103.  
  104.     pkgadd -d /tmp
  105.  
  106.   The pkgname is optional.  Note that the -d flag assumes that if the
  107.   argument begins with a '/', then its a package in filesystem format.
  108.   Otherwise, its a magic cookie (e.g. diskette1) to pick a storage device.
  109.   I.E., this won't work:
  110.  
  111.     cd /tmp; pkgadd -d .
  112.  
  113. Subject: S17) How can I speed up the loading of Windows programs from floppies?
  114.  
  115. If you find yourself loading a Windows program more than once, for
  116. whatever reason, you might appreciate Rick Richardson's "Handy trick #1427":
  117.  
  118.   Use the file manager to copy each
  119.   installation floppy to d:\diskN where N is the disk number.
  120.   Then, you can try to install a program as many times as you
  121.   want without waiting for floppies.  Just run D:\DISK1\SETUP
  122.   from the file manager.  At least with Word, setup seems
  123.   to understand that the files aren't coming from floppies
  124.   and will just proceed to install everything it needs
  125.   from d:\disk1, d:\disk2, etc. without further prompting.
  126.  
  127.   Discovered purely by accident - I had the disks in
  128.   d:\w1, d:\w2, etc. and after setup finished with w1,
  129.   it said it couldn't find d:\disk2\somefile.  Aha I say!
  130.  
  131. (FAQ maintainer's observation: I believe this is how some Windows software is
  132. organized on CD-ROMs for installation - that might be why the Windows setup
  133. program understands it.)
  134.  
  135. Subject: S18) Why has fingertip librarian suddenly stopped working?
  136.  
  137. An authorization code file for flib inexplicably carried an expiration
  138. date of 12/31/93.  There is a trivial fix for this:
  139.  
  140.   $ mv /usr/flib/authorization /usr/flib/authorization.old
  141.  
  142. flib should now work again.
  143.  
  144. DEVELOPER
  145.  
  146. Subject: D1) What books on UnixWare programming might I read/purchase?
  147.  
  148. First, the UNIX Press volumes:
  149.  
  150.   Title                                  ISBN #
  151.   - Programming Series -
  152.   UNIX Software Development Tools        0-13-017690-7
  153.   Programming in Standard C              0-13-017666-4
  154.   Programming with UNIX System Calls     0-13-017674-5
  155.   Character User Interface Programming   0-13-042581-8
  156.   Graphical User Interface Programming   0-13-042698-9
  157.   Network Programming Interfaces         0-13-017641-9
  158.   Device Driver Programming              0-13-042623-7
  159.   STREAMS Modules and Drivers            0-13-066879-6
  160.   Portable Device Interface              0-13-066838-9
  161.  
  162.   - Reference Series -
  163.   Command Reference (a-l)                0-13-042699-0
  164.   Command Reference (m-z)                0-13-042607-5
  165.   Operating System API Reference         0-13-017658-3
  166.   Windowing System Reference             0-13-017716-4
  167.   System Files and Devices Reference     0-13-017682-6
  168.   Device Driver Reference                0-13-042631-8
  169.  
  170. No UNIX programmer should be caught without the Stevens' books:
  171.  
  172.   Advanced Programming in the UNIX Environment
  173.   W. Richard Stevens
  174.   Addison-Wesley, 1992
  175.   ISBN 0-201-56317-7
  176.  
  177.   UNIX Network Programming
  178.   W. Richard Stevens
  179.   Prentice Hall, 1990
  180.   ISBN 0-13-949876-1
  181.  
  182. Donald Lewine's POSIX programming guide is also indispensable as a
  183. reference for "which standard defines what API?" kind of questions:
  184.  
  185.   POSIX Programmer's Guide
  186.   Donald Lewine
  187.   O'Reilly and Associates, Inc.
  188.   ISBN 0-937175-73-0
  189.  
  190. Subject: D2) Are there alternatives for programmers to the UnixWare SDK?
  191.  
  192. Programmers on tight budgets might consider the Prime Time Freeware
  193. SDK for Intel SVR4.2, Issue 1-1, a "complete, stand-along development
  194. system" for UnixWare and similar Intel SVR4.2 Unix systems.  This is a
  195. Rock Ridge CD-ROM containing all the major GNU development tools (gcc,
  196. gdb, &c), X, InterViews, Tk and "much much more", plus a 100+ page
  197. user's guide.  Univel provided Prime Time with the necessary #include
  198. files and static C libraries to make this product a usable standalone
  199. system.
  200.  
  201.   Prime Time SDK for Intel SVR4.2, Issue 1-1
  202.   ISBN 1-88 1957-12-8
  203.   Steve Zwaska, Editor
  204.   Prime Time Freeware
  205.   370 Altair Way, #150
  206.   Sunnyvale, CA 94086
  207.   +1 408 433 9662 Voice
  208.   +1 408 433 0727 FAX
  209.   ptf@cfcl.com
  210.  
  211. Subject: D3) I installed the Prime Time SDK, and now I can't log in?!
  212.  
  213. Some permissions were not set properly by the SDK install.  The fix is
  214. to su to root and:
  215.  
  216.   chmod -R go+rx /usr/include
  217.   chmod -R go+rx /usr/lib
  218.  
  219. There is a sticker on the CD-ROM envelope informing users of this
  220. need, but it seems to have been accidentally left off of some early
  221. shipments.  Steve Zwaska (stz@netcom.com) notes of these trials and
  222. tribulations:
  223.  
  224.   We have fixed all of the script problems for version 2-1 (mid-January 
  225.   release) and have added a bunch of stuff (YEA XFree86-2.0 is on there in 
  226.   pkgadd format!)
  227.  
  228.   There is a FTP site for the corrected Install scripts and make_links at 
  229.   ftp.netcom.com  - pub/ptsdk/movers.uu
  230.  
  231. Subject: D4) Will UnixWare version 1.1 bundle Motif?
  232.  
  233. Yes.  Motif 1.2 runtime libraries and the Motif Window Manager are
  234. included in UnixWare 1.1.
  235.  
  236. Subject: D5) How do I avoid problems programming with the UCB compatibility libraries?
  237.  
  238. There are two problems that are typically encountered when
  239. compiling/linking code that uses Berklisms:
  240.  
  241. - Undefined symbols at link time
  242. - Incompatibilities between the SysV header files and the UCB libraries
  243.  
  244. C code using Berklisms such as index/rindex will generate "undefined
  245. symbol" messages for each of the BSD-specific functions.  To get
  246. around this, you have one of two options:
  247.  
  248. a) Compile with the "UCB" compiler (/usr/ucb/cc).  This is actually a shell
  249.    script wrapper around the standard C compiler (/usr/ccs/bin/cc) that 
  250.    sets up the necessary #include and library paths.  This is the path to
  251.    take if you want a more "pure" BSD environment for your development.
  252.  
  253. b) If you want a SysV environment, but need to link in some functions
  254.    only available in the BSD library (eg, you'll replace gethostname() with
  255.    uname() later), simply link in the UCB libraries _after_ the standard
  256.   (SysV) libraries.  For example:
  257.  
  258.      cc -o foo foo.c -lc -L /usr/ucblib -lucb
  259.  
  260.    Note the order of the library specifications, and that "-lc" should
  261.    precede the UCB library specification to resolve all possible synonyms
  262.    against the SysV library, rather than the BSD library.
  263.  
  264. Be careful exercising option (b), however.  Merely linking against the
  265. UCB library, without the preceding "-lc", will cause code to be
  266. compiled against the SysV #include files (located in /usr/include) and
  267. then linked against the UCB libraries:
  268.  
  269.     cc -o foo foo.c -L /usr/ucblib -lucb  # Don't do this
  270.  
  271. (Note that an implicit "-lc" is appended to the command line.)
  272. Differences in such things as structure sizes between the SysV
  273. #includes and the UCB libraries can wreak all kinds of havoc - as your
  274. friendly FAQ maintainer discovered in just this fashion when trying to
  275. use setjmp in a source module that also called some UCB functions.
  276. One way to get around this is to insert a "-I /usr/ucbinclude"
  277. directive into the command line, but this is essentially the effect of
  278. using /usr/ucb/cc.
  279.  
  280. On this general topic, I'll include some notes from the net.
  281.  
  282. Gordon W. Ross <gwr@mc.com> observes:
  283.  
  284.   I just wanted to mention here that most people I have helped with
  285.   porting problems related to the dirent or directory libraries have
  286.   caused their own problems by incorrectly using the UCB library.
  287.   The directory(3) routines in the UCB library only work with the
  288.   header files in /usr/ucbinclude so if you fail to put that in
  289.   your include path and just link with -lucb you end up with
  290.   seriously broken programs.  The stuff in /usr/ucbinclude/ and
  291.   /usr/ucblib/ was meant to be used by /usr/ucb/cc only, and
  292.   when used that way it (mostly) works.  I have usually found it
  293.   easiest to just stay away from the UCB library entirely.
  294.   I would advise others to do the same.  (The UCB library has
  295.   well known problems in signal and some dbm functions.)
  296.  
  297. Robert Withrow (witr@rwwa.com) adds:
  298.  
  299.   In addition, checking the following things will almost always yield a
  300.   working port for any reasonably ``well behaved program'':
  301.  
  302.   1 Replace bcopy et.al with the apropriate memcpy functions...
  303.  
  304.   #define bcopy(b1,b2,len) memmove((b2), (b1), (size_t)(len))
  305.   #define bzero(b,len) memset((b), 0, (size_t)(len))
  306.   #define bcmp(b1,b2,len) memcmp((b1), (b2), (size_t)(len))
  307.  
  308.   2 Replace index and rindex approprately:
  309.  
  310.   #define index(a,b) strchr((a),(b))
  311.   #define rindex(a,b) strrchr((a),(b))
  312.  
  313.   3 Don't use the SVR4 library's signal() routine,
  314.   [use sigaction instead ...]
  315.  
  316.   /* Reliable signals */
  317.   /* This was taken from Stevens... */
  318.  
  319.   #include <signal.h>
  320.  
  321.   typedef void Sigfunc(int);
  322.  
  323.   Sigfunc *signal(int signo, Sigfunc *func)
  324.   {
  325.     struct sigaction act, oact;
  326.  
  327.     act.sa_handler = func;
  328.     sigemptyset(&act.sa_mask);
  329.     act.sa_flags = 0;
  330.     if (signo != SIGALRM) {
  331.       act.sa_flags |= SA_RESTART;
  332.     }
  333.     if (sigaction(signo, &act, &oact) < 0)
  334.       return(SIG_ERR);
  335.     return(oact.sa_handler);
  336.   }
  337.  
  338.   4 Replace random with lrand
  339.  
  340.   #define random() lrand48()
  341.   #define srandom(seed) srand48((seed))
  342.  
  343.   5 Replace the bsd readdir code with the Posix code (requires changing an
  344.   include file and a declaration usually, but also perhaps a symbol with a 
  345.   strlen.)
  346.  
  347.   6 Replace wait3 and wait4 with posix wait code.  This is complicated
  348.   because some code *writes* into the values that posix only provides read 
  349.   access to.
  350.  
  351. Lest all this seem too dreadfully complicated, Rick Richardson
  352. (rick@digibd.com) shrugs:
  353.  
  354.   Its much easier to port stuff than most people think.
  355.  
  356.   I've found that 99.99% of applications with BSDisms can be ported
  357.   by simply compiling normally, but linking with -lc -lucb.  This
  358.   resolves the SVR4 C library first, avoiding problems with dirent
  359.   and the like, but also lets you pick up any BSD-isms like
  360.   random(), index(), etc.
  361.  
  362.   Really, its painless.
  363.  
  364. Subject: D6) Where can I get Emacs?
  365.  
  366. John Angelo Gnassi (jgnassi@hstbme.mit.edu) answers your prayers:
  367.  
  368. ``If you live and die by Emacs, trying to get a new system up
  369.   without it is torture.  You don't have to.  There is a version,
  370.   18.59.5, in binary format ready for anonymous ftp from
  371.   ftp.novell.com:/pub/unixware/developer/emacs.UWbin.tar.Z.  A pristine 
  372.   19.19 will not compile directly with the standard tools (preprocessor and
  373.   other problems), but more than a half dozen people have told me they
  374.   had no problems compiling it with gcc.''
  375.  
  376. The Prime Time SDK CD-ROM mentioned earlier also contains Emacs.
  377.  
  378. Subject: D7) How can I compile X clients without a complete X11 source tree?
  379.  
  380. Pat Campbell of Novell USG writes:
  381.  
  382.   To compile most if not all X clients WITHOUT a complete X tree
  383.   use: 
  384.       imake -I/usr/X/lib/config -DUseInstalled
  385.             ^^^^^^^^^^^^^^^^^^^
  386.       Not necessary if you have set IMAKEINCLUDE environment variable.
  387.  
  388.   The "-DUseInstalled" directs imake to use the installed include
  389.   and library files. 
  390.  
  391.   Special note for motif applications:  
  392.  
  393.   You will need three more libraries, -lXm -lXIM -lgen, during 
  394.   the link stage.  I prepend them to the following variables
  395.   within the Imakefile like this.
  396.  
  397.                LOCAL_LIBRARIES = -lXm -lXIM [ whatever was already here ]
  398.                SYS_LIBRARIES = -lgen [ whatever was already here ] 
  399.  
  400.   This is a working solution, not necessarily the correct/elegant solution :-)
  401.  
  402. Subject: D8) I've now got 1.1.  Where's my SDK?
  403.  
  404. The UnixWare software development kit (SDK) ships separately from the
  405. base UnixWare operating system.
  406.  
  407. Subject: D9) I've now got the 1.1 SDK.  Where's xab?
  408.  
  409. xab (X Application Builder) has been removed from the SDK distribution
  410. as of release 1.1.  It is still available from ISC, however.
  411.  
  412. ---
  413. Trademarks
  414.  
  415. Unix is a registered trademark, licensed exclusively by X/Open Co., Ltd.
  416. Novell, NetWare and UnixWare are trademarks of Novell, Inc.
  417. Windows will probably become a trademark of Microsoft Corp. after all.
  418. -- 
  419. Jim Vlcek                         Elements of the information superhighway:
  420. uunet!molly!vlcek                                        UNIX: the concrete
  421. molly!vlcek@uunet.uu.net                             TCP/IP: the road signs
  422. Beautiful downtown St. Paul                   Windows: the fast-food joints
  423.  
  424.